package com.example.springbootsfzy.mapper;

import com.example.springbootsfzy.domain.ConsultantLevels;
import com.example.springbootsfzy.domain.Consultants;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
* @author 30658
* @description 针对表【consultants】的数据库操作Mapper
* @createDate 2025-01-02 15:11:36
* @Entity com.example.springbootsfzy.domain.Consultants
*/
@Mapper
public interface ConsultantsMapper {

    int deleteByPrimaryKey(Long id);

    int insert(Consultants record);

    int insertSelective(Consultants record);

    Consultants selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(Consultants record);

    int updateByPrimaryKey(Consultants record);

    List<Consultants> selectAll();

    List<Consultants> selectActive(Consultants consultants);


    List<String> getExtra();

    List<ConsultantLevels> getLevel();

//    List<Consultants> findConsultantsByFilters(Map<String, Object> filters);
    List<Consultants> findConsultantsByFilters(@Param("gender") String gender,
                                              @Param("area") String area,
                                              @Param("fields") List<String> fields,
                                              @Param("level") String level);

    Consultants selectByAccountAndPassword(@Param("username") String username,
                                           @Param("password") String password);

}
